package cn.tedu.cn.danie;

/**
 * @author SWJ
 * @create 2021-06-15 11:14
 */
public class InterDemo {
    public static void main(String[] args) {
        //创建多态对象
        Inter3 i3 = new Inter3imp3();
        i3.add();
        //创建实现类对象i3 进行测试最常见
        Inter3imp3 i4 = new Inter3imp3();
        i4.update();
        //创建实现类对象i4实例化
        // 测试 接口增加 接口更新


    }
}

interface Inter1 {
    /**
     * 接口中成员变量，默认会拼接public static final 静态常量
     */
    int age = 10;

    /**
     * 定义更新方法
     * 接口中方法都是抽象方法，默认public abstract可以简写
     */
    void update();

    //更新方法
    void find();
//查询方法
}

interface Inter2 {
    /**
     * 创建 Inter2接口
     * 接口没有构造方法，更不可以实例化
     */
    void delete();//删除方法

    void add();
}

/**
 * 接口和接口是继承关系，而且一个接口可以继承多个接口
 */
interface Inter3 extends Inter1, Inter2 {
}
//4.创建Inter3接口的实现类并添加未实现的方法

/**
 * 2.接口和实现类之间可以建立实现关系,通过implments关键字来完成
 * 注意,java类是单继承,而接口不限,写接口时,我们一般先继承再实现
 */

class Inter3imp3 implements Inter3 {

    /**
     * Inter3imp3是Inter3接口的实现对象
     * 实现一个 接口
     * <p>
     * 定义更新方法
     * 接口中方法都是抽象方法，默认public abstract可以简写
     */
    @Override
    public void update() {
        System.out.println("接口更新");
    }

    @Override
    public void find() {
        System.out.println("接口查询");
    }

    /**
     * 接口没有构造方法，更不可以实例化
     */
    @Override
    public void delete() {
        System.out.println("接口删除");
    }

    @Override
    public void add() {
        System.out.println("接口增加");
    }
}